Refining Trace Abstraction using Abstract Interpretation
نویسندگان
چکیده
The CEGAR loop in software model checking notoriously diverges when the abstraction refinement procedure does not derive a loop invariant. An abstraction refinement procedure based on an SMT solver is applied to a trace, i.e., a restricted form of a program (without loops). In this paper, we present a new abstraction refinement procedure that aims at circumventing this restriction whenever possible. We apply abstract interpretation to a program that we derive from the given trace. If the program contains a loop, we are guaranteed to obtain a loop invariant. We call an SMT solver only in the case where the abstract interpretation returns an indefinite answer. That is, the idea is to use abstract interpretation and an SMT solver in tandem. An experimental evaluation in the setting of trace abstraction indicates the practical potential of this idea.
منابع مشابه
Synchronous Game Semantics via Round Abstraction
A synchronous game semantics—one in which several moves may occur simultaneously—is derived from a conventional (sequential) game semantics using a round abstraction algorithm. We choose the programming language Syntactic Control of Interference and McCusker’s fully abstract relational model as a convenient starting point and derive a synchronous game model first by refining the relational sema...
متن کاملAn Abstract Interpretation Perspective on Linear vs. Branching Time
It is known that the branching time language ACTL and the linear time language ∀LTL of universally quantified formulae of LTL have incomparable expressive powers, i.e., Sem(ACTL) and Sem(∀LTL) are incomparable sets. Within a standard abstract interpretation framework, ACTL can be viewed as an abstract interpretation LTL∀ of LTL where the universal path quantifier ∀ abstracts each linear tempora...
متن کاملProbabilistic Abstractions with Arbitrary Domains
Recent work by Hermanns et al. and Kattenbelt et al. has extended counterexample-guided abstraction refinement (CEGAR) to probabilistic programs. In these approaches, programs are abstracted into Markov Decision Processes (MDPs). Analysis of the MDPs allows to compute lower and upper bounds for the probability of reaching an error state. The bounds can be improved by refining the abstraction. T...
متن کاملProbabilistic Abstract Interpretation of Imperative Programs using Truncated Normal Distributions
When modelling a complex system, such as one with distributed functionality, we need to choose an appropriate level of abstraction. When analysing quantitative properties of the system, this abstraction is typically probabilistic, since we introduce uncertainty about its state and therefore its behaviour. In particular, when we aggregate several concrete states into a single abstract state we w...
متن کاملStrong Preservation as Completeness in Abstract Interpretation
Many algorithms have been proposed to minimally refine abstract transition systems in order to get strong preservation relatively to a given temporal specification language. These algorithms compute a state equivalence, namely they work on abstractions which are parti-transition systems in order to get strong preservation relatively to a given temporal specification language. These algorithms c...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- CoRR
دوره abs/1702.02369 شماره
صفحات -
تاریخ انتشار 2017